<?php
namespace app\index\model;
use think\Model;
class Shopregion extends Model
{
    protected $resultSetType = 'collection';
    //按市区店铺查询数据
    //$id业务员ID
    //查询所有店铺或者业务员名下所有店铺
    public function SuperData($adminid,$id=0){
        if($id)
            $where=['state'=>1,'adminid'=>['=',$adminid],'manageid'=>['in',[0,$id]]];
        else
            $where=['state'=>1,'adminid'=>['in',[$adminid,0]]];
        //查询所有市
        $shi=$this->group('shi')->field('shi')->select();
        //查询所有市和区
        $qu=$this->group('shi,qu')->field('shi,qu')->select();
        //查询所有市、区和店名
        $res=$this->alias('a')
            ->join("agency b",'b.id=a.agencyid')
            ->group('shi,qu,agencyid')
            ->where($where)
            ->field('shi,qu,shop,b.id')
            ->select();
        $arr=[];
        //循环所有市，并把市作为第一维的下标
        foreach ($shi as $shis){
            $arr[$shis['shi']]=[];
            //循环所有区
            foreach ($qu as $qus){
                //判断该区是否在所循环的市中
                if($shis['shi']==$qus['shi']){
                    //把区作为第二维的下标
                    $arr[$shis['shi']][$qus['qu']]=[];
                    //循环所有店铺
                    foreach($res as $v){
                        //判断店铺是否在循环的区中
                        if($qus['qu']==$v['qu']){
                            //第三维存储对应的店铺名
                            $arr[$shis['shi']][$qus['qu']][]=[$v['shop'],$v['id']];
                        }
                    }
                }
            }
        }
        return $arr;
    }


}